perm filename RAIDUP.TVR[UP,DOC] blob
sn#002777 filedate 1972-10-12 generic text, type T, neo UTF8
DEBUG or How to run RAID or DDT from an upper segment.
It is now possible to run RAID or DDT from an (unprotected) upper
segment, if you do not already have an upper segment (this may
change). The advantage to this is you may save RAID or DDT with
symbols and not have them cluttering up your core image until you
really need them. DEBUG cleverly notes if you are on a display or
teletype and loads the appropriate flavor of debugger.
To get upper segment RAID or DDT, use the following sequence instead
of TRY or DEBUG:
.LOAD or EXECUTE DEBUG[1,3],%S<your load modules>
(%S causes your symbols to be loaded)
You will get an upper segment which contains RAID but you should not
bother to SSAVE it as it will be loaded if it's not there.
To get upper segment RAID or DDT and save your symbols, use the
following sequence instead of TRY or DEBUG:
.LOAD SDEBUG[1,3],%S<your load modules>
.DDT ;To save your symbols
Your symbols will be saved on a file: <job name>.SYM. They will be
reloaded in your upper segement along with RAID's when DDT is typed
to the moniter.
Six cautions:
1) Neither RAID nor DDT is pure so one should not try to attack to an
upper segment with the names *RAID* or *DDT*.
2) When you use SDEBUG and you have two copies of a program around,
be sure you use the following procedure to prevent the old symbols
from being clobbered.
Instead of saying DDT immediately after LOADing you should change job
name by say GET <new program name>.* (which will fail of course and
just change you job name) and say DDT to save your symbols on <new
job name>.SYM.
This is admittedly kludgy but if you can think of a more graceful
solution to the problem, send me (TVR) a message.
3) JOBDDT will point to the starting address of DEBUG instead of to
DDT or RAID. Soon, the seven RAID locations will be BLT'ed below the
starting address of DEBUG so the programs expecting them will do the
right thing.
4) If you use SDEBUG, JOBSYM will be set to the copy in the upper
segment when DDT is invoked.
5) Let it be known that channel 17 is used by DEBUG to read RAID or
DDT in from the disk. When a GETSEG UUO is implimented, this won't be
necessary.
6) Breakpoints will not work if the RAID or DDT segment goes away.
Therefore you should set breakpoints and the save your core image. It
will lose.